/*
* Copyright (C) 2020 ~ 2024 chaigec All Rights Reserved.
*
* Author:     chaigec <chaigec@163.com>
* Maintainer: chaigec <chaigec@163.com>

 * Use of this source code is governed by MIT license that can be found in the
 * LICENSE file in the root of the source tree. All contributing project authors
 * may be found in the AUTHORS file in the root of the source tree.
*/

#include "MkStateGridA/MkStateGridA.h"
#include<gtest/gtest.h>


class CMkEventPool;
class CMkTimer;
class CMkStateGridA;
class CMkStateGridAUt : public testing::Test
{
public:
    CMkStateGridAUt();
    ~CMkStateGridAUt();

    void SetUp() override;
    void TearDown() override;

    Uint32 OnUpRequest(const CMkStateGridARequestBase* pRequest, const MkStateGridAResponseCallback& ResCb);
    Uint32 OnCurRequest(const CMkStateGridARequestBase* pRequest, const MkStateGridAResponseCallback& ResCb);

    CMkEventPool*   m_pEventPool;
    CMkTimer*       m_pTimer;


    CMkStateGridA*     m_pUpServer;
    CMkStateGridA*     m_pCurServer;
    void*           m_WaitHandle;

    MkString    m_UpServerId;
    MkString    m_UpServerRealm;
    Uint16      m_UpServerPort;

    MkString    m_ServerId;
    MkString    m_Realm;
    Uint16      m_ServerPort;
    MkString    m_PlaySession;
    MkString    m_AlaramSubscribeId;
    MkString    m_StatusSubscribeId;

};